package com.amsp.oa.oademo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.math.BigDecimal;

@Data
@TableName("performance_salary")
@ApiModel(description = "职员绩效薪资核定表")
public class PerformanceSalary {
    @TableId(type = IdType.AUTO)
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("姓名")
    private String name;

    @ApiModelProperty("工号")
    private String employeeId;

    @ApiModelProperty("入职日期")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private LocalDate entryDate;

    @ApiModelProperty("拟派部门")
    private String department;

    @ApiModelProperty("拟派职位")
    private String position;

    @ApiModelProperty("试用期职等职级")
    private String probationGrade;

    @ApiModelProperty("转正后职等职级")
    private String regularGrade;

    @ApiModelProperty("试用期绩效工资")
    private BigDecimal probationPerformancePay;

    @ApiModelProperty("试用期工龄工资")
    private BigDecimal probationSeniority;

    @ApiModelProperty("试用期岗位特殊津贴")
    private BigDecimal probationSpecialAllowance;

    @ApiModelProperty("试用期绩效奖金(KPI)")
    private BigDecimal probationKpiBonus;

    @ApiModelProperty("试用期特殊说明")
    private String probationSpecialNote;

    @ApiModelProperty("转正后绩效工资")
    private BigDecimal regularPerformancePay;

    @ApiModelProperty("转正后工龄工资")
    private BigDecimal regularSeniority;

    @ApiModelProperty("转正后岗位特殊津贴")
    private BigDecimal regularSpecialAllowance;

    @ApiModelProperty("转正后绩效奖金(KPI)")
    private BigDecimal regularKpiBonus;

    @ApiModelProperty("转正后特殊说明")
    private String regularSpecialNote;

    @ApiModelProperty("薪资面谈人")
    private String salaryInterviewer;

    @ApiModelProperty("人资经办")
    private String hrOperator;

    @ApiModelProperty("用人单位经理")
    private String departmentManager;

    @ApiModelProperty("部长/总监")
    private String departmentDirector;

    @ApiModelProperty("应征者签名")
    private String applicantSignature;

    @ApiModelProperty("应征者签名日期")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private LocalDate applicantDate;

    @ApiModelProperty("总裁/董事长签名")
    private String presidentSignature;

    @ApiModelProperty("企业管理部签名")
    private String corporateManagementSignature;

    @ApiModelProperty("总经理签名")
    private String generalManagerSignature;
}